to GTK_SENSITIVITY_ON, so that the button is always sensitive or
GTK_SENSITIVITY_OFF to make it insensitive respectively.
-* In the early 2.14.x releases, GtkAdjustment was changed to enforce
- that values are restricted to the range [lower, upper - page_size].
- This has always been the documented behaviour, and the recommended
- practice is to set page_size to 0 when using adjustments for simple
- scalar values, like in a slider or spin button.
- Due to the large number of applications that are affected by this
- change, the behaviour has been reverted to the old behaviour in
- 2.14.3, with an explicit warning that this change will be
- reintroduced in 2.90.
+* GtkAdjustment now enforces that values are restricted to the
+ range [lower, upper - page_size]. This has always been the documented
+ behaviour, and the recommended practice is to set page_size to 0
+ when using adjustments for simple scalar values, like in a slider
+ or spin button.
* gdk-pixbuf will use GIO for mime type detection if possible. For
this to work, shared-mime-info needs to be installed and XDG_DATA_DIRS
{
g_return_if_fail (GTK_IS_ADJUSTMENT (adjustment));
- value = CLAMP (value, adjustment->lower, adjustment->upper);
+ /* don't use CLAMP() so we don't end up below lower if upper - page_size
+ * is smaller than lower
+ */
+ value = MIN (value, adjustment->upper - adjustment->page_size);
+ value = MAX (value, adjustment->lower);
if (value != adjustment->value)
{
adj->lower < adj->value)
{
value = adj->value - (tree_view->allocation.x - x + 1);
- gtk_adjustment_set_value (adj, CLAMP (value, adj->lower, adj->upper - adj->page_size));
+ gtk_adjustment_set_value (adj, value);
}
else if (x >= tree_view->allocation.x + tree_view->allocation.width &&
adj->upper - adj->page_size > adj->value)
{
value = adj->value + (x - tree_view->allocation.x - tree_view->allocation.width + 1);
- gtk_adjustment_set_value (adj, CLAMP (value, 0.0, adj->upper - adj->page_size));
+ gtk_adjustment_set_value (adj, MAX (value, 0.0));
}
}
adj->lower < adj->value)
{
value = adj->value - (tree_view->allocation.y - y + 1);
- gtk_adjustment_set_value (adj, CLAMP (value, adj->lower, adj->upper - adj->page_size));
+ gtk_adjustment_set_value (adj, value);
}
else if (y >= tree_view->allocation.height &&
adj->upper - adj->page_size > adj->value)
{
value = adj->value + (y - tree_view->allocation.height + 1);
- gtk_adjustment_set_value (adj, CLAMP (value, 0.0, adj->upper - adj->page_size));
+ gtk_adjustment_set_value (adj, MAX (value, 0.0));
}
}
}
hadjustment->upper = MAX (allocation->width, icon_view->priv->width);
if (hadjustment->value > hadjustment->upper - hadjustment->page_size)
- gtk_adjustment_set_value (hadjustment, MAX (0, hadjustment->upper - hadjustment->page_size));
+ gtk_adjustment_set_value (hadjustment, hadjustment->upper - hadjustment->page_size);
vadjustment->page_size = allocation->height;
vadjustment->page_increment = allocation->height * 0.9;
vadjustment->upper = MAX (allocation->height, icon_view->priv->height);
if (vadjustment->value > vadjustment->upper - vadjustment->page_size)
- gtk_adjustment_set_value (vadjustment, MAX (0, vadjustment->upper - vadjustment->page_size));
+ gtk_adjustment_set_value (vadjustment, vadjustment->upper - vadjustment->page_size);
if (gtk_widget_get_realized (widget) &&
icon_view->priv->scroll_to_path)
static gboolean
rubberband_scroll_timeout (gpointer data)
{
- GtkIconView *icon_view;
- gdouble value;
-
- icon_view = data;
-
- value = MIN (icon_view->priv->vadjustment->value +
- icon_view->priv->scroll_value_diff,
- icon_view->priv->vadjustment->upper -
- icon_view->priv->vadjustment->page_size);
+ GtkIconView *icon_view = data;
- gtk_adjustment_set_value (icon_view->priv->vadjustment, value);
+ gtk_adjustment_set_value (icon_view->priv->vadjustment,
+ icon_view->priv->vadjustment->value +
+ icon_view->priv->scroll_value_diff);
gtk_icon_view_update_rubberband (icon_view);
{
gint x, y;
gint focus_width;
- gfloat offset, value;
+ gfloat offset;
gtk_widget_style_get (GTK_WIDGET (icon_view),
"focus-line-width", &focus_width,
offset = y + item->y - focus_width -
row_align * (GTK_WIDGET (icon_view)->allocation.height - item->height);
- value = CLAMP (icon_view->priv->vadjustment->value + offset,
- icon_view->priv->vadjustment->lower,
- icon_view->priv->vadjustment->upper - icon_view->priv->vadjustment->page_size);
- gtk_adjustment_set_value (icon_view->priv->vadjustment, value);
+
+ gtk_adjustment_set_value (icon_view->priv->vadjustment,
+ icon_view->priv->vadjustment->value + offset);
offset = x + item->x - focus_width -
col_align * (GTK_WIDGET (icon_view)->allocation.width - item->width);
- value = CLAMP (icon_view->priv->hadjustment->value + offset,
- icon_view->priv->hadjustment->lower,
- icon_view->priv->hadjustment->upper - icon_view->priv->hadjustment->page_size);
- gtk_adjustment_set_value (icon_view->priv->hadjustment, value);
+
+ gtk_adjustment_set_value (icon_view->priv->hadjustment,
+ icon_view->priv->hadjustment->value + offset);
gtk_adjustment_changed (icon_view->priv->hadjustment);
gtk_adjustment_changed (icon_view->priv->vadjustment);
{
gint px, py, x, y, width, height;
gint hoffset, voffset;
- gfloat value;
gdk_window_get_pointer (GTK_WIDGET (icon_view)->window, &px, &py, NULL);
gdk_window_get_geometry (GTK_WIDGET (icon_view)->window, &x, &y, &width, &height, NULL);
hoffset = MAX (px - (x + width - 2 * SCROLL_EDGE_SIZE), 0);
if (voffset != 0)
- {
- value = CLAMP (icon_view->priv->vadjustment->value + voffset,
- icon_view->priv->vadjustment->lower,
- icon_view->priv->vadjustment->upper - icon_view->priv->vadjustment->page_size);
- gtk_adjustment_set_value (icon_view->priv->vadjustment, value);
- }
+ gtk_adjustment_set_value (icon_view->priv->vadjustment,
+ icon_view->priv->vadjustment->value + voffset);
+
if (hoffset != 0)
- {
- value = CLAMP (icon_view->priv->hadjustment->value + hoffset,
- icon_view->priv->hadjustment->lower,
- icon_view->priv->hadjustment->upper - icon_view->priv->hadjustment->page_size);
- gtk_adjustment_set_value (icon_view->priv->hadjustment, value);
- }
+ gtk_adjustment_set_value (icon_view->priv->hadjustment,
+ icon_view->priv->hadjustment->value + hoffset);
}
value = MIN (value, MAX (range->adjustment->lower,
range->layout->fill_level));
- value = CLAMP (value, range->adjustment->lower,
- (range->adjustment->upper - range->adjustment->page_size));
-
gtk_adjustment_set_value (range->adjustment, value);
gtk_adjustment_changed (range->adjustment);
}
value = MIN (value, MAX (range->adjustment->lower,
range->layout->fill_level));
- value = CLAMP (value, range->adjustment->lower,
- (range->adjustment->upper - range->adjustment->page_size));
-
gtk_adjustment_set_value (range->adjustment, value);
}
break;
}
- value = CLAMP (value, adjustment->lower, adjustment->upper - adjustment->page_size);
-
gtk_adjustment_set_value (adjustment, value);
return TRUE;
if (range && gtk_widget_get_visible (range))
{
GtkAdjustment *adj = GTK_RANGE (range)->adjustment;
- gdouble delta, new_value;
+ gdouble delta;
delta = _gtk_range_get_wheel_delta (GTK_RANGE (range), event->direction);
- new_value = CLAMP (adj->value + delta, adj->lower, adj->upper - adj->page_size);
-
- gtk_adjustment_set_value (adj, new_value);
+ gtk_adjustment_set_value (adj, adj->value + delta);
return TRUE;
}
return GTK_WIDGET (spin);
}
-static void
-warn_nonzero_page_size (GtkAdjustment *adjustment)
-{
- if (gtk_adjustment_get_page_size (adjustment) != 0.0)
- g_warning ("GtkSpinButton: setting an adjustment with non-zero page size is deprecated");
-}
-
/* Callback used when the spin button's adjustment changes. We need to redraw
* the arrows when the adjustment's range changes, and reevaluate our size request.
*/
spin_button = GTK_SPIN_BUTTON (data);
spin_button->timer_step = spin_button->adjustment->step_increment;
- warn_nonzero_page_size (adjustment);
gtk_widget_queue_resize (GTK_WIDGET (spin_button));
}
G_CALLBACK (adjustment_changed_cb),
spin_button);
spin_button->timer_step = spin_button->adjustment->step_increment;
- warn_nonzero_page_size (adjustment);
}
gtk_widget_queue_resize (GTK_WIDGET (spin_button));
GdkRectangle visible_rect;
gint y;
gint offset;
- gfloat value;
gdk_window_get_pointer (tree_view->priv->bin_window, NULL, &y, NULL);
y += tree_view->priv->dy;
return;
}
- value = CLAMP (tree_view->priv->vadjustment->value + offset, 0.0,
- tree_view->priv->vadjustment->upper - tree_view->priv->vadjustment->page_size);
- gtk_adjustment_set_value (tree_view->priv->vadjustment, value);
+ gtk_adjustment_set_value (tree_view->priv->vadjustment,
+ MAX (tree_view->priv->vadjustment->value + offset, 0.0));
}
static gboolean
GdkRectangle visible_rect;
gint x;
gint offset;
- gfloat value;
gdk_window_get_pointer (tree_view->priv->bin_window, &x, NULL, NULL);
}
offset = offset/3;
- value = CLAMP (tree_view->priv->hadjustment->value + offset,
- 0.0, tree_view->priv->hadjustment->upper - tree_view->priv->hadjustment->page_size);
- gtk_adjustment_set_value (tree_view->priv->hadjustment, value);
+ gtk_adjustment_set_value (tree_view->priv->hadjustment,
+ MAX (tree_view->priv->hadjustment->value + offset, 0.0));
return TRUE;
}
}
- gtk_adjustment_set_value (tree_view->priv->hadjustment,
- CLAMP (x,
- tree_view->priv->hadjustment->lower,
- tree_view->priv->hadjustment->upper
- - tree_view->priv->hadjustment->page_size));
+ gtk_adjustment_set_value (tree_view->priv->hadjustment, x);
}
else
{
vadj = tree_view->priv->vadjustment;
if (tree_x != -1)
- gtk_adjustment_set_value (hadj, CLAMP (tree_x, hadj->lower, hadj->upper - hadj->page_size));
+ gtk_adjustment_set_value (hadj, tree_x);
if (tree_y != -1)
- gtk_adjustment_set_value (vadj, CLAMP (tree_y, vadj->lower, vadj->upper - vadj->page_size));
+ gtk_adjustment_set_value (vadj, tree_y);
}
/**